﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IA.Shopping.UI
{
    public class ListaDeCompras
    {
        private int[] _Comprador { get; set; }
        private bool[] _Comprado { get; set; }
        private Produto[] _Produtos { get; set; }

        public ListaDeCompras()
        {

            _Comprador = new int[Util.QUANT_ITENS_DESEJADOS];
            _Produtos = new Produto[Util.QUANT_ITENS_DESEJADOS];
            _Comprado = new bool[Util.QUANT_ITENS_DESEJADOS];

            for (int i = 0; i < Util.QUANT_ITENS_DESEJADOS; i++)
            {
                _Produtos[i] = new Produto(i, Produtos.Tipos[i]);
                _Comprado[i] = false;
                _Comprador[i] = -1;
            }
        }

        public List<int> produtosRetantes()
        {
            List<int> restantes = new List<int>();
            for (int i = 0; i < _Produtos.Count(); i++)
            {
                if (_Comprado[i] == false)
                {
                    restantes.Add(i);
                }
            }
            return restantes;
        }

        public List<Produto> listaDeProdutosRetantes()
        {
            List<Produto> restantes = new List<Produto>();
            for (int i = 0; i < _Produtos.Count(); i++)
            {
                if (_Comprado[i] == false)
                {
                    restantes.Add(_Produtos.ElementAt(i));
                }
            }
            return restantes;
        }

        public void MarcarItemComprado(int id, int compradorId)
        {
            for (int i = 0; i < _Produtos.Count(); i++)
            {
                if (id == _Produtos[i]._iD)
                {
                    _Comprado[i] = true;
                    _Comprador[i] = compradorId;
                }
            }
        }
    }
}
